package com.cyan.teamquestionnaire.service;

import com.cyan.teamquestionnaire.beans.PageInfo;
import com.cyan.teamquestionnaire.entity.AnswerSheet;
import com.cyan.teamquestionnaire.entity.Questionnaire;

import java.util.List;
import java.util.Map;

public interface AnswerSheetService {

    // name需要（已经）回答的问卷, need==true表示还没回答问卷
    List<Questionnaire> questionnaireForOne(String name, boolean need);

    // 发布问卷时，向答卷表写入内容
    void insertAnswer(List<AnswerSheet> list);

    // name需要（已经）回答的问卷, need==true表示还没回答问卷————分页操作
    PageInfo<Questionnaire> questionnaireForOneY(PageInfo<Questionnaire> pageInfo, boolean need);

    //name需要（已经）回答的问卷,通过Qid查询问卷以及title进行模糊判断
    List<Questionnaire> questionnaireForOneFuzzy(String name, String title, boolean need);

    //回答问题
    void answerQuestionnaire(AnswerSheet answerSheet);

    // qid需要（已经）回答的问卷, need==true表示该问卷还没有被回答
    List<AnswerSheet> questionnaireForSelf(String qId, String name, boolean need);

    //qid需要（已经）回答的问卷, need==true表示该问卷还没有被回答————分页
    PageInfo<AnswerSheet> questionnaireForSelfY(PageInfo<AnswerSheet> pageInfo, boolean need);

    //根据QID和name查询问卷回答情况
    AnswerSheet AnswerbyQidName(AnswerSheet answerSheet);

    //用户发布的所有的问卷的答卷率，传入用户的name，
     Map<String,Object>  userResponseRate(String name);
}
